/*
 * Copyright (c) 2008-2013 Haulmont. All rights reserved.
 * Use is subject to license terms, see http://www.cuba-platform.com/license for details.
 */

package com.haulmont.asu.entity;

import com.haulmont.chile.core.annotations.NamePattern;
import com.haulmont.cuba.core.entity.StandardEntity;

import javax.persistence.*;
import java.util.Date;

/**
 * Author: Sergey42
 * Date: 30.11.13 19:26
 */
@Table(name = "EXT_CATHEDRA_RESUME")
@Entity(name = "ext$CathedraResume")
@NamePattern("%s|number")
public class CathedraResume extends StandardEntity {

    private static final long serialVersionUID = 4782949073101170267L;

    @Column(name = "RESUME_NUMBER", length = 10)
    protected String number;

    @ManyToOne
    @JoinColumn(name = "CATHEDRA_ID")
    protected Cathedra cathedra;

    @ManyToOne
    @JoinColumn(name = "DIPLOMA_STUDENT_ID")
    protected DiplomaStudent diplomaStudent;

    @ManyToOne
    @JoinColumn(name = "PROJECT_THEME_ID")
    protected ProjectTheme projectTheme;

    @Column(name = "IMAGE_VOLUME")
    protected Integer imageVolume;

    @Column(name = "NOTE_VOLUME")
    protected Integer noteVolume;

    @ManyToOne
    @JoinColumn(name = "REVIEWER_ID")
    protected Reviewer reviewer;

    @Column(name = "DEFENSE_DATE")
    @Temporal(TemporalType.DATE)
    protected Date defenseDate;

    public Cathedra getCathedra() {
        return cathedra;
    }

    public void setCathedra(Cathedra cathedra) {
        this.cathedra = cathedra;
    }

    public DiplomaStudent getDiplomaStudent() {
        return diplomaStudent;
    }

    public void setDiplomaStudent(DiplomaStudent diplomaStudent) {
        this.diplomaStudent = diplomaStudent;
    }

    public ProjectTheme getProjectTheme() {
        return projectTheme;
    }

    public void setProjectTheme(ProjectTheme projectTheme) {
        this.projectTheme = projectTheme;
    }

    public Integer getImageVolume() {
        return imageVolume;
    }

    public void setImageVolume(Integer imageVolume) {
        this.imageVolume = imageVolume;
    }

    public Integer getNoteVolume() {
        return noteVolume;
    }

    public void setNoteVolume(Integer noteVolume) {
        this.noteVolume = noteVolume;
    }

    public Reviewer getReviewer() {
        return reviewer;
    }

    public void setReviewer(Reviewer reviewer) {
        this.reviewer = reviewer;
    }

    public Date getDefenseDate() {
        return defenseDate;
    }

    public void setDefenseDate(Date defenseDate) {
        this.defenseDate = defenseDate;
    }

    public String getNumber() {
        return number;
    }

    public void setNumber(String number) {
        this.number = number;
    }
}
